package com.budwk.app.waterquality.models;

import com.budwk.starter.common.openapi.annotation.ApiModel;
import com.budwk.starter.common.openapi.annotation.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@Accessors(chain = true)
@Table("waterquality.wk_score_info")
@Comment("评分信息表")
@ApiModel(description = "评分信息表")
public class ScoreInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    @Column
    @Name
    @Comment("编号")
    @ApiModelProperty(description = "ID")
    @ColDefine(type = ColType.VARCHAR, width = 50)
    @PrevInsert(els = {@EL("snowflake()")}, nullEffective = true)
    private String id;

    @Column("submit_date")
    @Comment("评分时间")
    @ApiModelProperty(description = "评分时间")
    @ColDefine(type = ColType.DATETIME, width = 120)
    private LocalDateTime submitDate;

    @Column("year")
    @Comment("年度")
    @ApiModelProperty(description = "年度")
    @ColDefine(type = ColType.VARCHAR, width = 120)
    private String year;

    @Column("jc_name")
    @Comment("监测中心名称")
    @ApiModelProperty(description = "监测中心名称")
    @ColDefine(type = ColType.VARCHAR, width = 120)
    private String jcName;

    @Column("original_records")
    @Comment("原始记录")
    @ApiModelProperty(description = "原始记录")
    @ColDefine(type = ColType.FLOAT, width = 50)
    private BigDecimal originalRecords;

    @Column("reorg_result_score")
    @Comment("整编成果表")
    @ApiModelProperty(description = "整编成果表")
    @ColDefine(type = ColType.FLOAT, width = 50)
    private BigDecimal reorgResultScore;

    @Column("quality_control")
    @Comment("质量控制")
    @ApiModelProperty(description = "质量控制")
    @ColDefine(type = ColType.FLOAT, width = 50)
    private BigDecimal qualityControl;

    @Column("external_work")
    @Comment("对外检测工作")
    @ApiModelProperty(description = "对外检测工作")
    @ColDefine(type = ColType.FLOAT, width = 50)
    private BigDecimal externalWork;

    @Column("other_records")
    @Comment("其他记录")
    @ApiModelProperty(description = "其他记录")
    @ColDefine(type = ColType.FLOAT, width = 50)
    private BigDecimal otherRecords;

    @Column("total_score")
    @Comment("总分")
    @ApiModelProperty(description = "总分")
    @ColDefine(type = ColType.FLOAT, width = 50)
    private BigDecimal totalScore;

    @Column("remark")
    @Comment("备注")
    @ApiModelProperty(description = "备注")
    @ColDefine(type = ColType.VARCHAR, width = 300)
    private String remark;

    @Column("create_date")
    @Comment("创建时间")
    @ApiModelProperty(description = "创建时间")
    @ColDefine(type = ColType.DATETIME, width = 120)
    private LocalDateTime createDate;

    @Column("create_id")
    @Comment("创建人")
    @ApiModelProperty(description = "创建人")
    @ColDefine(type = ColType.VARCHAR, width = 120)
    private String createId;

    @Column("update_date")
    @Comment("更新时间")
    @ApiModelProperty(description = "更新时间")
    @ColDefine(type = ColType.DATETIME, width = 120)
    private LocalDateTime updateDate;

    @Column("update_id")
    @Comment("修改人")
    @ApiModelProperty(description = "修改人")
    @ColDefine(type = ColType.VARCHAR, width = 120)
    private String updateId;

}
